home *** CD-ROM | disk | FTP | other *** search
/ Magnum One / Magnum One (Mid-American Digital) (Disc Manufacturing).iso / d21 / dvdump2.arc / DVDUMP.DOC < prev    next >
Text File  |  1988-03-12  |  13KB  |  255 lines

  1.  
  2.  
  3.                                   DVDUMP
  4.                            Desqview Memory Dump
  5.                      (c) Daniel T. Travison Jr., 1987
  6.  
  7.                          GEnie Email: D.TRAVISON
  8.  
  9.                 Hotel Henge 518-399-3073 (8pm-12 midnight)
  10.  
  11.                            Non-Electronic Mail:
  12.                                P.O. Box 165
  13.                           Burnt Hills, NY  12027
  14.  
  15.  
  16.     You  are  granted  permission  to  distribute  this  program  with  the
  17.     stipulation that NO  remittance is accepted  for either the  program or
  18.     handling and distribution charges.  This program may not be distributed
  19.     with other programs on disk if a charge is incurred for any program  or
  20.     for the medium.  In other words, if there is a charge involved then you
  21.     do not have permission to include this program, period!
  22.  
  23.   ╒══════════════════════════════════════════════════════════════════════════╕
  24.   │ The author makes no warranties expressed or implied as to the quality or │
  25.   │ performance of this program.  The author will not be held liable for any │
  26.   │ direct, indirect,  incidental or consequential  damages  resulting  from │
  27.   │ the use of this program.   Your use of  this  program  constitutes  your │
  28.   │ agreement to this disclaimer and your releasing the author from any form │
  29.   │ of liability or litigation.                                              │
  30.   ╘══════════════════════════════════════════════════════════════════════════╛
  31.  
  32.  
  33.  
  34.     DVDUMP.COM is designed to allow the user to view memory in  hexadecimal
  35.     and  ascii  format  within  Desqview  window.   It  is inspired by John
  36.     Ferguson's Xray.com which he describes as a PC background monitor.   It
  37.     is primarily  designed as  a aide  for debugging  to be  used with your
  38.     favorite debugging tool such as DOS's Debug.com.  It allows the user to
  39.     get a 'snapshot' view of  memory and when combined with  Desqview's cut
  40.     and paste  features allows  the user  to grab  snapshots of  memory for
  41.     later use in problem determination.
  42.  
  43.     Dvdump.com has two basic modes of operation, 'real-time' and  'freeze'.
  44.     In the 'real-time' mode,  memory is updated continuously.   In 'freeze'
  45.     mode,  the  program  makes  a  call  to Desqview to indicate a critical
  46.     routine has started.  You will  notice that all display updating  stops
  47.     and other windows stop.  At this  point you may view memory at  a given
  48.     instant or  mark parts  of the  display for  later transfering  into an
  49.     editor  for  detailed  diagnosis.   I  have  not  determined  the  full
  50.     implications of this  call and as  a result I  suggest that it  be used
  51.     sparingly since  it does  stop other  programs and  appears to lock the
  52.     system from time to time (probally an i/o or interrupt problem).   Read
  53.     the section on the key commands for a alternate method of 'freezing'  a
  54.     program.
  55.  
  56.     Paging through memory is handled using segment/offset addressing.  When
  57.     the Segment address is set, the offset may be paged within the range of
  58.     0000h  to  FFFFh.   Wrapping  occurs  at  these  boundries  as well.  A
  59.     segment/offset address may also be inputted using the insert key.  This
  60.     will cause a 'jump' to that address and will also save the address  for
  61.     future use.  This provides a convenient method for jumping directly  to
  62.     a specified address and later returning to that address.
  63.  
  64.     The addressable  memory range  is 0000:0000  to FFFF:FFFF.   Dvdump.com
  65.     does not support extended or expanded memory and has not been tested in
  66.     the 80386 protected mode.
  67.  
  68.  
  69.  
  70.     Desqview routines used:
  71.  
  72.     1: Checks  for  the  presence  of  Desqview  and  exits with an error if
  73.        Desqview is not found.
  74.  
  75.     2: The  program  writes  directly  to  the  screen  buffer  provided  by
  76.        Desqview.
  77.  
  78.     3: The program releases the rest of the time slice when ever it finishes
  79.        a screen and also after determining that no key has been pressed.
  80.  
  81.     4: 'Start Critical'  and  'End Critical'.   These two  calls are used to
  82.        toggle the 'freeze' option
  83.  
  84.     Requirements:
  85.  
  86.     1: Desqview 2.0: You MUST have this version or later otherwise I can not
  87.        guarantee the reliability of the program.
  88.  
  89.     2: DVDUMP.COM: the executable program
  90.  
  91.     3: DM-PIF.DVP: the program information  file used by Desqview
  92.                    (see next section)
  93.  
  94.     4: Reasonable  compatability  with  the  'standard'  IBM is assumed when
  95.        running this program.
  96.  
  97.     Program information file:
  98.  
  99.     1: I have provided the 2 screens from change a program to illustrate the
  100.        required  settings  should  the  DM-PIF.DVP  be missing or incorrect.
  101.        Five points should be noted:
  102.  
  103.     2: Memory size is set to 3k.   More is not needed, less will  produce an
  104.        error message.
  105.  
  106.     3: Maximum and starting screen size is  set to 17 for the height  and 77
  107.        for  the  width.   Increasing   values  will  distort  the   display.
  108.        Decreasing these values can  cause serious problems when  the program
  109.        tries to write to memory that is not allocated to it.
  110.  
  111.     4: All memory options on the  Advanced screen are set to  zero. changing
  112.        this will only allocate memory to  the program that will not be  used
  113.        and is therefore wasted.
  114.  
  115.     5: The close on exit to DOS option is set to yes.  This allows  Desqview
  116.        to use its own shell.com instead of command.com to load the  program.
  117.        This saves a nice chunk of memory that would otherwise be wasted.  In
  118.        addition, the escape key will close the window as well as exiting the
  119.        program.
  120.  
  121.     6: The program will appear on the Add a program (other) menu as Desqview
  122.        Memory  Dump and will have the keys DM assigned as  the startup keys.
  123.        Keep this in mind in case you have a problem finding it.
  124.  
  125.     7: The program is currently set to not run in the background.  You may
  126.        want to change this if you are testing another program in a
  127.        foreground window and wish to view both at the same time.
  128.  
  129.  
  130. ┌─────────────────────────────────────────────────────────────────────────────┐
  131. │                              Change a Program                               │
  132. │                                                                             │
  133. │Program Name............: Desqview Memory Dump                               │
  134. │                                                                             │
  135. │Keys to Use on Open Menu: DM                         Memory Size (in K):   3 │
  136. │─────────────────────────────────────────────────────────────────────────────│
  137. │Program...: DVDUMP.COM                                                       │
  138. │                                                                             │
  139. │Parameters:                                                                  │
  140. │                                                                             │
  141. │Directory.: C:\DV                                                            │
  142. │─────────────────────────────────────────────────────────────────────────────│
  143. │Options:                                                                     │
  144. │                    Writes directly to screen......: [N]                     │
  145. │                    Displays graphics information..: [N]                     │
  146. │                    Can be swapped out of memory...: [Y]                     │
  147. │                    Requires floppy diskette.......: [N]                     │
  148. │                                                                             │
  149. │  Press F1 for advanced options                  Press ─┘ when you are DONE  │
  150. └─────────────────────────────────────────────────────────────────────────────┘
  151.  
  152.  
  153. ┌─────────────────────────────────────────────────────────────────────────────┐
  154. │                     Change a Program Advanced Options                       │
  155. │                                                                             │
  156. │System Memory (in K).......:   0   Maximum Program Memory Size (in K)..:     │
  157. │                                                                             │
  158. │Script Buffer Size.......:     0   Maximum Expanded Memory Size (in K):      │
  159. │                                                                             │
  160. │Text Pages: 1  Graphics Pages: 0   Initial Mode:        Interrupts: 00 to FF │
  161. │─────────────────────────────────────────────────────────────────────────────│
  162. │Window Position:                                                             │
  163. │   Maximum Height:  17       Starting Height:  17       Starting Row...:   1 │
  164. │   Maximum Width.:  77       Starting Width.:  77       Starting Column:   1 │
  165. │─────────────────────────────────────────────────────────────────────────────│
  166. │                               Shared Program                                │
  167. │Pathname..:                                                                  │
  168. │                                                                             │
  169. │Data......:                                                                  │
  170. │─────────────────────────────────────────────────────────────────────────────│
  171. │Options:                                                                     │
  172. │   Close on exit to DOS.........: [Y]      Uses its own colors.........: [Y] │
  173. │   Allow Close Window command...: [Y]      Runs only in foreground.....: [Y] │
  174. │   Uses math coprocessor........: [N]      Keyboard conflict (0-4).....: [0] │
  175. │                                                                             │
  176. │ Press F1 for standard options                  Press ─┘ when you are DONE   │
  177. └─────────────────────────────────────────────────────────────────────────────┘
  178.  
  179.  
  180.  
  181.                               COMMAND KEYS
  182.  
  183.         * Up  Arrow......Decrease OFFSET  by 16  bytes
  184.                          (1 line)
  185.  
  186.         * Down  Arrow....Increase OFFSET  by 16  bytes
  187.                          (1 line)
  188.  
  189.         * Page Up........Decrease  OFFSET by 256  bytes
  190.                          (1 screen)
  191.  
  192.         * Page Down......Increase  OFFSET by 256  bytes
  193.                          (1 screen)
  194.  
  195.          ^Page Up........Decrease SEGMENT address by 1000h
  196.  
  197.          ^Page Down......Increase SEGMENT address by 1000h
  198.  
  199.           Home...........Set OFFSET to 0000h
  200.  
  201.          ^Home...........Jump to the SEGMENT/OFFSET  address
  202.                          stored by the insert option
  203.  
  204.           Insert.........Input a SEGMENT/OFFSET address then
  205.                          jump to that address.  This address
  206.                          will also be  saved for use  by the
  207.                          ^Home key.
  208.  
  209.           F10............Toggle   Freezing   of   all  other
  210.                          windows.   This   should  be   used
  211.                          sparingly since  processing in  all
  212.                          other windows halts!  This is  only
  213.                          a   'test'   option.    I    HIGHLY
  214.                          recommend that you manually  switch
  215.                          to the window  you want halted  and
  216.                          press  the  Ctrl-Numlock  key  (The
  217.                          PAUSE key if your keyboard provides
  218.                          one)
  219.  
  220.           Escape.........Exit the program.
  221.  
  222.  
  223.       * NOTE: The key commands for changing the OFFSET have no affect
  224.               on the SEGMENT.  In other words, when the OFFSET reaches
  225.               FFFFh then it will wrap to 0000h and vise-versa.
  226.  
  227.  
  228.     Compatability:
  229.  
  230.     This program has been successfully run on the following
  231.     three machines:
  232.  
  233.     1: Compaq 386 (CGA card, amber monitor and NOT in protected mode)
  234.  
  235.     2: IBM 8mhz AT (monochrome graphics)
  236.  
  237.     3: My 8mhz XT.   (color) This machine is  an example of the  extreme in
  238.        that the parts were purchased from at least 7 different manufactures,
  239.        none of  which are known for their large market share.  The CPU is a
  240.        NEC V20,  the BIOS is by PHEONIX (version 2.26),  and the  operating
  241.        system is MS DOS 3.1
  242.  
  243.     The End:
  244.  
  245.     I have  written this  program because  I have  not found a satisfactory
  246.     alternative.  I have  learned a little  more about assembler  along the
  247.     way and consider that sufficient  compensation for the time and  effort
  248.     spent on this program.  I do have an EGO so feel free to send  comments
  249.     using one of the  methods provided above.  Users  that are in the  same
  250.     stages of learning assembler as myself may have a copy of the source as
  251.     an  example  of  actual  uses  for  the  routines Quarterdeck provides.
  252.     Experienced assembler programmer's will be bored and only point out all
  253.     the different areas where my ignorance of assembler really shines.
  254.  
  255.